<?php
require_once(realpath(dirname(__FILE__)) . '/../../Aplicación/views/GeneralView.php');
require_once(realpath(dirname(__FILE__)) . '/../../Aplicación/models/interfaces/IProduct.php');
require_once(realpath(dirname(__FILE__)) . '/../../Aplicación/daos/ProductDAO.php');
require_once(realpath(dirname(__FILE__)) . '/../../Aplicación/controlers/interfaces/IController.php');

/**
 * @access public
 * @author Edgar Morán
 * @package Aplicación.controlers
 */
class ProductsController implements IController {
	/**
	 * @AssociationType Aplicación.views.GeneralView
	 * @AssociationKind Composition
	 */
	public $_unnamed_GeneralView_;
	/**
	 * @AssociationType Aplicación.models.interfaces.IProduct
	 * @AssociationKind Composition
	 */
	public $_unnamed_IProduct_;
	/**
	 * @AssociationType Aplicación.daos.ProductDAO
	 * @AssociationKind Composition
	 */
	public $_unnamed_ProductDAO_;

	/**
	 * @access public
	 * @param int aId
	 * @param aQuantity int
	 * @return boolean
	 * @ParamType aId int
	 * 
	 * @ReturnType boolean
	 */
	public function fillinProducts($aId, $aQuantity_int) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @return array
	 * @ReturnType array
	 */
	public function listProductsUnderMinimunLevel() {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @return boolean
	 * @ReturnType boolean
	 */
	public function sendReorderNotification() {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param string aCode
	 * @param string aReference
	 * @param string aName
	 * @param string aDescription
	 * @param string aPresentation
	 * @param string aPicture
	 * @param int aStock
	 * @param int aMinStock
	 * @return boolean
	 * @ParamType aCode string
	 * @ParamType aReference string
	 * @ParamType aName string
	 * @ParamType aDescription string
	 * @ParamType aPresentation string
	 * @ParamType aPicture string
	 * @ParamType aStock int
	 * @ParamType aMinStock int
	 * @ReturnType boolean
	 */
	public function addProduct($aCode, $aReference, $aName, $aDescription, $aPresentation, $aPicture, $aStock, $aMinStock) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param int aId
	 * @return boolean
	 * @ParamType aId int
	 * @ReturnType boolean
	 */
	public function desactiveProduct($aId) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param int aId
	 * @return Aplicación.models.interfaces.IProduct
	 * @ParamType aId int
	 * @ReturnType Aplicación.models.interfaces.IProduct
	 */
	public function getProduct($aId) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param int aId
	 * @return void
	 * @ParamType aId int
	 * @ReturnType void
	 */
	public function printProduct($aId) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @return array
	 * @ReturnType array
	 */
	public function getProducts() {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @return void
	 * @ReturnType void
	 */
	public function printProductsList() {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param int aId
	 * @return boolean
	 * @ParamType aId int
	 * @ReturnType boolean
	 */
	public function activeProduc($aId) {
		// Not yet implemented
	}

	/**
	 * @access public
	 * @param string aSearchString
	 * @return array
	 * @ParamType aSearchString string
	 * @ReturnType array
	 */
	public function searchProducts($aSearchString) {
		// Not yet implemented
	}
}
?>